package com.fmboy.MXH.nav.domain.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

/**
 * 分类数据传输对象
 */
@Data
@Schema(name = "CategoryDTO", description = "分类数据传输对象")
public class CategoryDTO {

    @Schema(
            description = "分类ID（创建时不需要，更新时必填）",
            example = "1",
            requiredMode = Schema.RequiredMode.NOT_REQUIRED
    )
    private Integer id;

    @Schema(
            description = "分类名称",
            example = "技术文章",
            requiredMode = Schema.RequiredMode.REQUIRED
    )
    @JsonProperty("category_name")
    private String category_name;

    @Schema(
            description = "分类状态",
            example = "PUBLISHED",
            requiredMode = Schema.RequiredMode.REQUIRED
    )
    private String state;

    @Schema(
            description = "分类描述",
            example = "技术相关文章归档",
            requiredMode = Schema.RequiredMode.REQUIRED
    )
    private String reason;

    @Schema(
            description = "分类详细说明",
            example = "包含后端开发、架构设计等内容",
            requiredMode = Schema.RequiredMode.REQUIRED
    )
    @JsonProperty("category_text")
    private String category_text;


}